package com.ruoyi.project.module.applicationProperty.mapper;

import com.ruoyi.project.module.applicationProperty.domain.ApplicationProperty;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 应用属性 数据层
 * 
 * @author ruoyi
 * @date 2018-11-25
 */
public interface ApplicationPropertyMapper 
{
	/**
     * 查询应用属性信息
     * 
     * @param configApplicationPropertyId 应用属性ID
     * @return 应用属性信息
     */
	public ApplicationProperty selectApplicationPropertyById(Long configApplicationPropertyId);
	
	/**
     * 查询应用属性列表
     * 
     * @param applicationProperty 应用属性信息
     * @return 应用属性集合
     */
	public List<ApplicationProperty> selectApplicationPropertyList(ApplicationProperty applicationProperty);
	
	/**
     * 新增应用属性
     * 
     * @param applicationProperty 应用属性信息
     * @return 结果
     */
	public int insertApplicationProperty(ApplicationProperty applicationProperty);
	
	/**
     * 修改应用属性
     * 
     * @param applicationProperty 应用属性信息
     * @return 结果
     */
	public int updateApplicationProperty(ApplicationProperty applicationProperty);
	
	/**
     * 删除应用属性
     * 
     * @param configApplicationPropertyId 应用属性ID
     * @return 结果
     */
	public int deleteApplicationPropertyById(Integer configApplicationPropertyId);
	
	/**
     * 批量删除应用属性
     * 
     * @param configApplicationPropertyIds 需要删除的数据ID
     * @return 结果
     */
	public int deleteApplicationPropertyByIds(String[] configApplicationPropertyIds);

	int childSize(Long parentId);

	List<ApplicationProperty> selectApplicationPropertyByParentId(@Param("parentId") Long parentId);
}